package com.entmanage.base.domain;

import com.entmanage.common.core.domain.TreeEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.entmanage.common.annotation.Excel;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 产品展示信息对象 zx_show_menu
 *
 * @author hjh
 * @date 2025-07-23
 */
@ApiModel(value = "ZxShowMenu", description = "产品展示信息对象")
public class BiShow extends TreeEntity
{
    private static final long serialVersionUID = 1L;

    /** 菜单ID */
    @ApiModelProperty(value = "菜单ID")
    private Long menuId;

    /** 菜单名称 */
    @Excel(name = "菜单名称")
    @ApiModelProperty(value = "菜单名称")
    private String menuName;

    /** 菜单logo */
    @Excel(name = "菜单logo")
    @ApiModelProperty(value = "菜单logo")
    private String menuLogo;

    /** 菜单标题 */
    @Excel(name = "菜单标题")
    @ApiModelProperty(value = "菜单标题")
    private String menuTitle;

    /** 展示地址（视频或PDF等在线文档） */
    @Excel(name = "展示地址", readConverterExp = "视=频或PDF等在线文档")
    @ApiModelProperty(value = "展示地址（视频或PDF等在线文档）")
    private String showUrl;

    /** 上传文件地址 */
    @Excel(name = "上传文件地址")
    @ApiModelProperty(value = "上传文件地址")
    private String fileUrl;

    /** 菜单类型（M目录 C菜单 F按钮） */
    @Excel(name = "菜单类型", readConverterExp = "M=目录,C=菜单,F=按钮")
    @ApiModelProperty(value = "菜单类型（M目录 C菜单 F按钮）")
    private String menuType;

    /** 菜单状态（0显示 1隐藏） */
    @Excel(name = "菜单状态", readConverterExp = "0=显示,1=隐藏")
    @ApiModelProperty(value = "菜单状态（0显示 1隐藏）")
    private String visible;

    /** 是否展示父级（0是 1否） */
    @Excel(name = "是否展示父级", readConverterExp = "0=是,1=否")
    @ApiModelProperty(value = "是否展示父级（0是 1否）")
    private String isShowParent;

    /** 菜单图标 */
    @Excel(name = "菜单图标")
    @ApiModelProperty(value = "菜单图标")
    private String icon;

    public void setMenuId(Long menuId)
    {
        this.menuId = menuId;
    }

    public Long getMenuId()
    {
        return menuId;
    }
    public void setMenuName(String menuName)
    {
        this.menuName = menuName;
    }

    public String getMenuName()
    {
        return menuName;
    }
    public void setMenuLogo(String menuLogo)
    {
        this.menuLogo = menuLogo;
    }

    public String getMenuLogo()
    {
        return menuLogo;
    }
    public void setMenuTitle(String menuTitle)
    {
        this.menuTitle = menuTitle;
    }

    public String getMenuTitle()
    {
        return menuTitle;
    }
    public void setShowUrl(String showUrl)
    {
        this.showUrl = showUrl;
    }

    public String getShowUrl()
    {
        return showUrl;
    }
    public void setFileUrl(String fileUrl)
    {
        this.fileUrl = fileUrl;
    }

    public String getFileUrl()
    {
        return fileUrl;
    }
    public void setMenuType(String menuType)
    {
        this.menuType = menuType;
    }

    public String getMenuType()
    {
        return menuType;
    }
    public void setVisible(String visible)
    {
        this.visible = visible;
    }

    public String getVisible()
    {
        return visible;
    }
    public void setIsShowParent(String isShowParent)
    {
        this.isShowParent = isShowParent;
    }

    public String getIsShowParent()
    {
        return isShowParent;
    }
    public void setIcon(String icon)
    {
        this.icon = icon;
    }

    public String getIcon()
    {
        return icon;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("menuId", getMenuId())
            .append("menuName", getMenuName())
            .append("parentId", getParentId())
            .append("menuLogo", getMenuLogo())
            .append("menuTitle", getMenuTitle())
            .append("orderNum", getOrderNum())
            .append("showUrl", getShowUrl())
            .append("fileUrl", getFileUrl())
            .append("menuType", getMenuType())
            .append("visible", getVisible())
            .append("isShowParent", getIsShowParent())
            .append("icon", getIcon())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
